#ifndef _SGF_VECTOR2_H_
#define _SGF_VECTOR2_H_

#include "Type.h"
#include "Math.h"
#include <iostream>

namespace SGF
{
	class Vector2
	{
	public:
		Real64 _x, _y;
		Vector2();
		Vector2(Real64 x, Real64 y);
		Vector2(const Vector2& src);
		Vector2& operator=(const Vector2& src);
		Real64 operator*(const Vector2& src);
		Vector2& operator+=(const Vector2& src);
		Vector2& operator-=(const Vector2& src);
		Vector2 operator+(const Vector2& src);
		Vector2 operator-(const Vector2& src);
		Real64& operator[](int index);
		static Real64 Length(const Vector2& src);
		static Vector2 Normalize(const Vector2& src);
		friend std::ostream& operator << (std::ostream& stream, Vector2& src);
	};
}
#endif
